<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <!-- ## 1.给定两个数组，编写一个函数来计算它们的交集。

-   输出结果中的每个元素一定是唯一的。

```
    输入：nums1 = [1,2,2,1], nums2 = [2,2]
    输出：[2]

    输入：nums1 = [4,9,5], nums2 = [9,4,9,8,4]
    输出：[9,4]
``` -->
    <script>
        var num1 = [1, 2, 2, 1, 3, 5, 7, 9];
        var num2 = [2, 2, 2, 4, 8, 2, 5];

        // res得到两个数组中交集[2, 2, 5]
        var res = num1.filter(function(a, b) {

            // 用num1中的数据 去num2数组中检测在num2是否存在
            // num2.indexOf(a) 检测num2中否是有 a 这个数据
            // 有数据就返回 数据索引，没有数据返回 -1，只要不等于-1就说明数据存在
            return (num2.indexOf(a) !== -1)
        })

        // 给res去掉重复的数据

        var sum = res.reduce(function(j, k) {
            return (j.indexOf(k) === -1) ? j.concat(k) : j
        }, [])
    </script>
</body>

</html>